package com.yunhe.abnormal.service.base;

import com.yunhe.abnormal.domain.base.AbnormalFormat;
import com.yunhe.common.exception.ArgumentErrorException;
import com.yunhe.common.model.base.AbnormalFormatDTO;

import java.util.Optional;

public interface AbnormalDetailFormatService {

    AbnormalFormatDTO create(AbnormalFormat abnormalFormat) throws ArgumentErrorException;

    void delete(Long id);

    AbnormalFormatDTO update(Long id,
                          Optional<Long> code,
                          Optional<String> name,
                          Optional<String> title,
                          Optional<String> content) throws ArgumentErrorException;

    AbnormalFormatDTO findById(Long id);

    Iterable<AbnormalFormatDTO> findAbnormalDetailFormats();

    void bind(Long id, Long pid);
}
